//只要是 Vue 本身的 API ， defineComponent 都可以自动推导其类型，
/**
 * 组件数据结构定义
 */
export interface IContext{
	/**非响应式对象	未在 Props 里定义的属性都将变成 Attrs*/
	attrs?:IContextAttrs;
	/**组件插槽，用于接收父组件传递进来的模板内容*/
	slots?:IContextSlots;
	/**方法 触发父组件绑定下来的事件*/
	emit?:(event: string, ...args: unknown[]) => void
}
/**
 * 组件传递数据attrs对象 非响应式 会随机组件更新而更新
 */
export interface IContextAttrs{
	[key:string]:unknown;
}
/**
 * 组件插槽，用于接收父组件传递进来的模板内容
 */
export interface IContextSlots{
	[key:string]:unknown;
}
/**
 * 触发父组件绑定下来的事件
 */
export interface IContextEimit{
	
}
/**
 * 数据文件结构体定义
 */
/**
 * 帐号基本信息
 * --用于帐号登陆注册
 */
export interface IAccountVo{
	/**帐号*/
	account:string;
	/**密码*/
	password:string;
	/**昵称*/
	nickName:string;
	// 手机号
	mobile:string,
	
}
/**
 * 用户基本信息
 * --用于业务中使用
 */
export interface IUserVo{
	/**用户主键*/
	upkId:string;
	/**用户昵称*/
	nickName:string;
	/**用户头像*/
	headIcon:string;
	/**用户等级 用户类型 帐号等级 经验 称号等*/
	//...
	mobile:string,    //手机
	password:string   //密码
	account:string    //账号
	wechatid:string   //微信账号
	qqid:string       //QQ账号
	sinaid:string     //微博账号
	appleid:string    //苹果账号
	mail:string       //邮箱
	picUrl:string|null  //头像
	sex:number|null     //性别
	countryCode:string|null //国家编码
	cityCode:string|null   //城市编码
	province:string|null   //国家编码
	city:string|null      //城市编码
	address:string|null  //地址
	scoreNum:number      //积分数量
	huibeansNum:number  //灰豆数量
	birthday:string    //生日
	token:string
	createDate:string  //账号创建日期
	lastLoginDate:string //最后一次登录时间
	invitationCode:string  //邀请码
	pInviterCode:string|null  //被邀请码
	vColor:string            //用户身份
	remark:string          //备注
	userLevel:string      //账号等级
	userLevelScore:number //账号等级经验
	judgeStatus:number  //鉴赏家状态
	judgePic:string  //奖赏家头像框图
	judgeShowType:number //鉴赏家展示类型
	allCigarCollectNum:number //全部雪茄收藏数量
	cigarCollectNum:number //今日雪茄收藏数量
	changeNameNum:number  //今年剩余可修改昵称次数
	judge:boolean   //是否是鉴赏家
	knowledge:boolean //是否是知识达人
	reward:boolean  //是否是悬赏达人
	setAccount:boolean //是否设置过账号
	status:number   //账号状态
	explain:string //异常说明
	manager:boolean //是否是管理员
	managerPower:string //管理员权限
	showIcon:boolean  //是否显示管理员图标
	picGif:string  //管理头像框图标
	ban:boolean //管理员权限是否被禁止
	hasTobaccBusinessLicense:boolean //是否有烟草经营许可证
	vipLevel:boolean   //VIP等级
	vipEndDate:string  //VIP到期时间
}
//雪茄品牌信息
export interface ICigarBrand{
	//雪茄的id
	pkId:string
	//品牌英文名
	brandName:string
	//品牌的中文名
	nickName:string
	//品牌介绍
	content:string
	//品牌LOGO
	logoUrl:string
	//创建日期
	createdDate:string
	//品牌的类型
	brandType:number
	//排序
	brandSort:number
	
}
//雪茄信息
export interface ICigar{
	pkId:string
	//所属品牌ID
	bpkId:string
	//中文名
	nickName:string
	//英文名
	guanName:string
	//产地
	produceAddress:string
	//长度
	longSize:number
	//环径
	roundSize:number
	//英寸长度
  longInchSize:string
	//英寸环径
	roundInchSize:string
	//味道类型
	tasteType:string
	//雪茄图片
	picUrl:string
	//描述
	content:string
	//品牌LOGO图片
	logoUrl:string 
	//指导价
	guidePrice:string 
	//上传日期
	createDate:string
	//雪茄类型
	cigarType:string
	//发布年份
	publishYear:number
	//尺寸类型
	sizeType:string
	//包装规格
	packingSize:string
	//发行地区
	publishAddress:string
	//发行数量
	publishNumber:string
	//地区环标图
	addressNotesLogo:string
	//包装形式
	packType:string
	//上市时间
	publishTime:string
	//制作类型
	buildType:string
	//雪茄规格
	cigarSpecs:string
	//浓郁度
  cigarOdorRich:number
	//评分
	gradeNum:number
	//自己评分
	selfGradeNum:number
	//自己评的浓郁度
	selfRichNum:number
	//所属品牌系列ID
	bsPkId:string
	//排序
	cigarSort:number
	//图集
	cigarPics:Array<any>
	//是否收藏
	collectionStatus:boolean
	sort:number
	seriesName:string
	

	
}
//图集
export interface cigarPics{
	pkId:string
	cpkId:string
	picUrl:string
	createDate:string
}
//雪茄打分信息
export interface ICigarGrade{
	pkId:string   //主键
	upKId:string  //打分用户ID
	cpkId:string  //对应雪茄ID
	gradeNum:number //雪茄分数
	cigarOdorRich:number //浓郁度分数
	createDate:string    //评分日期
	cigarType:number    //雪茄类型
	
}
//雪茄收藏
export interface ICigarColletion{
	pkId:string   //主键
	cpkId:string  //收藏雪茄ID
	upKId:string  //收藏用户ID
	smokeDate:string //抽雪茄时间
	batching:string //佐饮
	remark:string  //说明
	createDate:string //收藏日期
	cigarType:number  //雪茄类型
	cigar:ICigar
	collectFileUrls:CollectFileUrl  //关联图片
	
}
export  interface CollectFileUrl{
	pkId:string //主键，唯一
	cpkId:string //对应的雪茄ID
	picUrl:string //图片地址
	createDate:string //创建日期
}


//帖子信息
export interface IMsg{
	pkId:string  //主键，唯一
	upkId:string //用户主键
	msgType:number  //帖子类型
	postTag:number  //帖子标签
	otherTag:string //帖子标签2
	content:string  //帖子内容
	title:string  //文章标题
	canComment:number //是否能评论
	canTurn:number  //是否能转发
	readNum:number  //阅读量
	parentPkId:string //转发帖ID
	createDate:string //发帖日期
	bestDate:string //成为精华帖日期
	newBiesDate:string //成为新手帖日期
	updateDate:string  //更新帖子时间
	cpkId:string  //分享的雪茄ID
	msgLocation:string //帖子定位城市名
	latitude:string  //定位经度
	longitude:string  //定位纬度
	gpkId:string  //转发活动ID
	vpkId:string //投票内容ID
	videoId:string //视频ID
	netUrK:string  //链接地址
	newestDate:string  //动态改变帖子的最新时间
	msgCityCode:string //发帖地址信息
	relationCigar:string //是否关联雪茄
	fileUrls:string  //帖子图片数组
	commentNum:number  //评论数量
	laudNum:number  //点赞数量
	trunNum:number //转发数量
	relateUsers:string //@的用户ID数组
	laud:boolean   //是否点赞
	collection:boolean  //是否点赞
	foces:boolean  //是否关注发帖人
	beFaces:boolean  //是否被发帖人关注
	edited:boolean  //是否编译过帖子
	cigar:ICigar  //关联的雪茄信息
	// trueMsg:IMsg
	
	
}
export interface FileUrl{
	pkId:string
	netUrl:string 
	urlType:number
	mpkId:string 
	sort:number
}
//活动信息
export interface IGame{
	
	pkId:string  //主键，唯一
	title:string //活动标题
	content:string //活动内容
	startDate:string //开始日期
	endDate:string  //结束日期
	gameStatus:number  //状态
	gameType:number //活动类型
	backContent:string //备注信息
	createDate:string //创建日期
	joinNum:string //参与数量
	joinType:number //参与类型
	hotNum:number //热度
	showType:number //展示方式
	showpicLink:string //活动内容链接
	commentNum:number //评论人数
	gameFileUrl:string  //活动图片
	prizeId:GamePrice
}
export interface GamePrice{
	pkId:string  //主键，唯一
	gameId:string //对应活动ID
	prizeNum:number //奖品数量
	prizeName:string //奖品名
	fileUrls:GamePriceFileUrl  //活动奖品图集
}
export interface GamePriceFileUrl{
	pkId:string  //主键，唯一
	net_url:string //图片地址
	ppkId:string  //对应奖品ID
}
//活动评论信息
export interface GameMsg{
	pkId:string  //主键，唯一
	gpkId:string  //评论的帖子ID
	upkId:string  //发评论的用户ID
	content:string //评论内容
	createDate:string //评论日期
	fileUrls:FileUrl  //图片合集
	status:number  //阅读状态
	laudNum:number  //评论被赞数量
	cigarUser:IUserVo  //发评论的用户信息
	msgRecyleNum:number  //评论被回复数量
	lauded:boolean    //是否点赞
	cigarGame:IGame    //评论的活动信息
	gameMsgPics:GameMsgPic  //活动图集
}
//活动评论图集
export interface GameMsgPic{
	pkId:string  //主键，唯一
	net_url:string  //主键，唯一
	gmpkId:string  //图片地址
}
//活动评论回复
export interface GameMsgReply{
	pkId:string  //主键，唯一
	gcPkId:string  //主评论ID
	buPkId:string  //被回复内容的ID
	brPkId:string  //被回复内容的ID
	ruPkId:string  //回复人ID
	content:string  //回复内容
	createDate:string  //回复日期
	replyStatus:number  //这条内容的状态
	replyType:number  //回复类型
	gameComment:GameMsg 
	toReply:GameMsgReply
	cigarUser:IUserVo
	
	
}